package cert_request

import (
	"private-go-sdk/http"
	"encoding/json"
	"private-go-sdk/model/common"
)

type CertApplyThirdRequest struct {
	Company *common.CertApplyThirdCompanyRequest `json:"company,omitempty"`
	User *common.CertApplyThirdUserRequest `json:"user,omitempty"`
	// <ext>core:true</ext> 【证书算法】证书算法 【传参】 取值范围：RSA（国际算法），SM2（国密算法）；不传值默认为：RSA（国际算法）。
	SigAlgType string `json:"sigAlgType,omitempty"`
	// <ext>core:true</ext> 【证书请求文件的base64】证书请求文件的base64 【传参】 需要按照sigAlgType生成对应算法的p10
	P10 string `json:"p10"`
	// <ext>core:true</ext> 【证书年限】证书年限 【传参】 取值范围：1（1年期），2（2年期）；不传值默认为：1（1年期）。
	Years *int64 `json:"years,omitempty"`
}
func (obj CertApplyThirdRequest) GetUrl() string {
    return "/cert/apply/third"
}

func (obj CertApplyThirdRequest) GetHttpParameter() *http.HttpParameter {
    parameter := http.NewPostHttpParameter()
    jsonBytes, _ := json.Marshal(obj)
    parameter.SetJsonParamer(string(jsonBytes))
    return parameter
}
